Skip to content

Conversation

@devanshcache
Copy link

@devanshcache devanshcache commented Nov 26, 2025

Description

Intake is composed of three components:

  • Intake Runners: dedicated, isolated runtime data ingestion environment
  • Intakes: a specific data stream or topic within an Intake Runner
  • Intake Users: provides secure access credentials for your applications to connect to your Intake.

Intake runner has already been merged reference (#952) this PR is continuation of the one of two components of Intake (ticket)

Checklist

  • Issue was linked above
  • Code format was applied: make fmt
  • Examples were added / adjusted (see e.g. here)
  • Docs are up-to-date: make generate-docs (will be checked by CI)
  • Unit tests got implemented or updated
  • Unit tests are passing: make test (will be checked by CI)
  • No linter issues: make lint (will be checked by CI)

@devanshcache devanshcache requested a review from a team as a code owner November 26, 2025 14:43
@devanshcache devanshcache changed the title Onboard Intake: introduce Intake Onboard Intake(2/3): introduce Intake Nov 26, 2025
@rubenhoenle
Copy link
Member

@devanshcache please note: All of this also applies to #1126

@rubenhoenle rubenhoenle self-assigned this Dec 5, 2025
@github-actions
Copy link

This PR was marked as stale after 7 days of inactivity and will be closed after another 7 days of further inactivity. If this PR should be kept open, just add a comment, remove the stale label or push new commits to it.

Copy link
Member

@rubenhoenle rubenhoenle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lot work needs to be done here.

projectLabel = model.ProjectId
}

if !model.AssumeYes {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if !model.AssumeYes {

shouldn't be needed anymore after integrating #1217

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Resolved

return err
}

if !model.AssumeYes {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if !model.AssumeYes {

shouldn't be needed anymore after integrating #1217

Example: examples.Build(
examples.NewExample(
`Create a new Intake with required parameters`,
`$ stackit beta intake create --display-name my-intake --runner-id xxx --catalog-uri "http://dremio.example.com" --catalog-warehouse "my-warehouse"`),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

well, if your subcommand is stackit beta intake create, where does the "instance" in the filepath come from...?

internal/cmd/beta/intake/instance/create/create.go

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also applies to all the other new subcommands btw

Copy link
Contributor

@yago-123 yago-123 Jan 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We would like to keep it this naming if possible $ stackit beta intake if needed moving out of instance folder. Unless that is a hard no-go from you or we are the "ugly duck".

"fmt"

"github.com/spf13/cobra"
"github.com/stackitcloud/stackit-cli/internal/cmd/params"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CI pipeline failing


```
Create a new Intake with required parameters
$ stackit beta intake create --display-name my-intake --runner-id xxx --catalog-uri "http://dremio.example.com" --catalog-warehouse "my-warehouse"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Executing this example gives me an error

image

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also not sure what this is

image

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since I'm also having also no luck with the second full example - could you maybe provide me with some testing instructions for this PR? 😅

image

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The first one is because we created this PR long time ago (before was opened here) and now that paramter is required. Resolved.

The second one is because when catalog-auth-type is Dremio it actually requires the personalAccessToken to be set, otherwise it can't authenticate with the catalog. I will check if maybe we can make this more intuitive for a user.

The third is because the url you provided does not exist at all (I think), notice also that you don't have any valid token. So even if the URL was correct, the CLI would complain with a message regarding the token. (I believe we can't change this at all...)

$ stackit beta intake create --display-name my-intake --runner-id xxx --description "Production intake" --labels "env=prod,team=billing" --catalog-uri "http://dremio.example.com" --catalog-warehouse "my-warehouse" --catalog-auth-type "dremio" --dremio-token-endpoint "https://auth.dremio.cloud/oauth/token" --dremio-pat "MY_TOKEN"

Create a new Intake with manual partitioning by a date field
$ stackit beta intake create --display-name my-partitioned-intake --runner-id xxx --catalog-uri "http://dremio.example.com" --catalog-warehouse "my-warehouse" --catalog-partitioning "manual" --catalog-partition-by "day(__intake_ts)"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And also the third example fails, I'm giving up with this one for today

image

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same the first case from previous comment, catalog-auth-type now is mandatory. Resolved.

@yago-123 yago-123 force-pushed the onboarding-intake-component branch 2 times, most recently from 5664361 to 5e372ff Compare January 26, 2026 16:36
@yago-123 yago-123 force-pushed the onboarding-intake-component branch from 5eba014 to fffc3db Compare January 27, 2026 15:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants